Increasingly, information is retrieved over a communication network. For instance, browsers are being deployed in both internet and intranet contexts to provide data access in geographically distributed environments. In some database systems, performance, availability, and communication cost issues arise when data is stored in a central location.
It has become increasingly difficult to funnel an arbitrary number of accesses to a single server site, especially as the number of accesses increases. Physical transport logistics interfere with data access. As the network access load grows at the central site, enhancing the use of wide area communications may be necessary to match the need. However, acquiring additional wide area bandwidth is expensive. In addition, increasing the bandwidth leads to considerable lead-times. As a result, a single server is unable to handle a very large load effectively. Moreover, if the central server fails, all the sites used for accessing the database are effectively down for an indefinite period of time.
Additionally, in a typical storage system data may be stored in a cloud of servers including one or more databases, application servers supporting the databases, and various backup mechanisms. These databases may be configured statically, in that physical storage systems are rigidly associated with a particular storage application. However, with the increasing use of cloud storage systems, a storage cloud is too large, and too dynamic for static configuration mechanisms to be practical. As an example, when an application is constrained to using specific storage media, that application can run out of space when there is actually free space within the data center.